Wireless device having a single processor in a short-range radio network

ABSTRACT

A system, a wireless hand-held device, and software component for accessing information responsive to short-range radio signals is provided. The system includes a wireless gateway device coupled to a network, such as a cellular network. The wireless gateway device includes a network manager software component for accessing information from the network responsive to a first short-range radio signal. The network may be a corporate, private or public network, such as the Internet. A first wireless device is coupled to the wireless gateway device. The first wireless device provides the first short-range radio signal. In an embodiment of the present invention, the first wireless device is a cellular telephone, personal digital assistant or thin terminal having a Bluetooth™ processor and transmitter. In an embodiment of the present invention, the network manager software component includes a plug and play software component for loading and executing software for the first wireless device. In an embodiment of the present invention, a second wireless device accesses information on the first wireless device using the wireless gateway device.

RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.09/850,399, entitled “A System, Device and Computer Readable Medium forProviding a Managed Wireless Network Using Short-Range Radio Signals,”filed on May 7, 2001, now U.S. Pat. No. 7,039,033 which is incorporatedherein by reference.

FIELD OF THE INVENTION

This invention relates generally to wireless devices in a wirelessnetwork using short-range radio signals.

BACKGROUND OF THE INVENTION

A user has numerous wireless devices for accessing and processinginformation. For example, a user may have a cellular telephone forcommunicating with others, a personal digital assistant (“PDA”) forstoring contact information, a laptop computer for storing andprocessing files, a digital camera for obtaining images and a pager forbeing contacted. Each one of these devices also may access remoteinformation on a private or public network, such as the Internet.However, this system suffers from several disadvantages.

First, typically only a single device originates and can access theInternet at a time.

Second, Internet protocol (“IP”) addresses are held while connected tothe Internet. This can be expensive and use scarce IP address resources.

Third, each device requires its own security management, such as aVirtual Private Network (“VPN”) and firewall software component.

Fourth, there is no ability to share, add to or manage the services ofthe numerous wireless devices. In particular, there is no communicationbetween wireless devices. If a user obtains a wireless device having anadditional service, such as extra persistence storage, other wirelessdevices typically are not capable of using the extra persistencestorage.

Bluetooth™ technology (www.bluetooth.com) provides wirelesscommunications between devices. Yet, Bluetooth™ technology also suffersfrom many disadvantages. Bluetooth™ technology does not allow for a“plug and play” capability at a wireless device application level. Inother words, a wireless device cannot merely be turned on and Bluetooth™technology recognizes it and establishes a communication protocol. If auser desires a wireless device to communicate with a Bluetooth™technology device, the added wireless device must have software driversand applications loaded to operate. Otherwise, the Bluetooth™ technologydevice is not able to communicate with the newly added wireless device.This makes it difficult to add new functionality or types of wirelessdevices. Bluetooth™ technology does not provide an open environment forsoftware programmers to provide application software components forwireless devices. Further, Bluetooth™ technology does not allow devicesto share information and resources at an application level.

Therefore, it is desirable to provide a system of wireless devices whichcan effectively communicate with each other and access information onthe Internet. The system of wireless devices should efficiently use IPresources and security management. The wireless devices shouldeffectively share and manage services and allow for seamless plug andplay capability. The system should allow for new functionality and typesof wireless devices.

SUMMARY OF THE INVENTION

A system, coupled to a cellular network, provides access to the Internetaccording to an embodiment of the present invention. The systemcomprises a wireless gateway device, coupled to the cellular network,having a network manager software component for accessing informationfrom the Internet responsive to a first short-range radio signal. Afirst wireless device is coupled to the wireless gateway device. Thefirst wireless device provides the first short-range radio signal.

According to an embodiment of the present invention, the first wirelessdevice is selected from a group consisting of a desktop computer, alaptop computer, a personal digital assistant, a headset, a printer, apager, a watch, digital camera and an equivalent thereof.

According to an embodiment of the present invention, the wirelessgateway device is a cellular telephone using a Global System for Mobilecommunications (“GSM”) protocol.

According to an embodiment of the present invention, the wirelessgateway device is a cellular telephone using a Code Division MultipleAccess (“CDMA”) protocol.

According to an embodiment of the present invention, the wirelessgateway device is a cellular telephone using a Time Division MultipleAccess (“TDMA”) protocol.

According to an embodiment of the present invention, the first wirelessdevice is a thin terminal.

According to an embodiment of the present invention, the first wirelessdevice includes a Bluetooth™ processor having a 2.4 GHZ transmitter.

According to an embodiment of the present invention, the wirelessgateway device includes a Bluetooth™ processor having a 2.4 GHZtransmitter.

According to an embodiment of the present invention, the network managersoftware component includes a plug and play software component forloading and executing software for the first wireless device.

According to an embodiment of the present invention, the network managersoftware component includes a PIN number management software componentfor obtaining and supplying PIN numbers.

According to embodiment of the present invention, the network managersoftware component includes a service repository software component forobtaining and providing an availability of a service from the firstwireless device.

According to an embodiment of the present invention, the first wirelessdevice includes an application software component for providing aservice. The network manager software component includes a managementsoftware component for accessing the service.

According to an embodiment of the present invention, the system furthercomprises a second wireless device coupled to the wireless gatewaydevice. The second wireless device provides a short-range signal. Thefirst wireless device communicates with the second wireless devicethrough the wireless gateway device.

According to an embodiment of the present invention, the system furthercomprises a second wireless device coupled to the wireless gatewaydevice. The wireless gateway device provides access to the Internet forthe first and second wireless devices.

According to an embodiment of the present invention, the network managersoftware component operates with an operating system software component.

According to an embodiment of the present invention, the operatingsystem component is a Linux, EPOC or a PocketPC operating system.

According to an embodiment of the present invention, the wirelessgateway device includes 1) an application software component forproviding a service, and 2) an application server software componentcoupled to the network management software component.

According to an embodiment of the present invention, the wirelessgateway device further includes a firewall software component.

According to an embodiment of the present invention, the wirelessgateway device includes a VPN software component.

According to an embodiment of the present invention, a hand-held devicefor providing a personal area network is provided. The hand-held devicecomprises a storage device coupled to a processor. The storage devicestores a software component for controlling the processor. The processoroperates with the component to provide a short-range radio Internetprotocol communication between the first hand-held wireless device and asecond hand-held wireless device.

According to an embodiment of the present invention, a Bluetooth™transmitter is coupled to the processor.

According to an embodiment of the present invention, a GSM transmitteris coupled to the processor.

According to an embodiment of the present invention, a wirelesshand-held device accesses a router in a personal network. The wirelesshand-held device comprises a storage device coupled to a processor. Thestorage device stores a software component for controlling theprocessor. The processor operates with the component to provide a firstshort-range radio signal to the router for accessing the Internet and asecond short-range radio signal to the router for accessing anotherwireless hand-held device.

According to an embodiment of the present invention, an article ofmanufacture, including a computer readable medium is provided. Thearticle of manufacture comprises an application software component forproviding a service. An application server software component providesthe application software component. The article of manufacture alsoincludes an Internet protocol network manager software component and anoperating system software component. Also, a short-range radio softwarecomponent for providing a short-range radio signal and a cellularsoftware component for providing a communications signal to a cellularnetwork is included with the article of manufacture.

Other aspects and advantages of the present invention can be seen uponreview of the figures, the detailed description, and the claims thatfollow.

BRIEF DESCRIPTION OF THE FIGS.

FIG. 1 illustrates a system according to an embodiment of the presentinvention.

FIG. 2 illustrates thin terminals and a wireless gateway deviceaccording to an embodiment of the present invention.

FIGS. 3 a-b are hardware block diagrams of a wireless gateway device andwireless handheld device according to an embodiment of the presentinvention.

FIGS. 4 and 5 a-b are software block diagrams for a wireless gatewaydevice according to an embodiment of the present invention.

FIG. 6 illustrates network management software interfaces according toan embodiment of the present invention.

FIG. 7 illustrates network management software components according toan embodiment of the present invention.

FIGS. 8 a-b illustrate multiple wireless devices coupled to a wirelessgateway device according to an embodiment of the present invention.

DETAILED DESCRIPTION

I. System Overview

The following description and claims relate to a system that accessesinformation from a wide area network (“WAN”), such as the Internet, andlocal wireless devices in response to short-range radio signals. Thenetwork may also be an IP based public or private network, such as acorporate secured network using VPN.

FIG. 1 illustrates system 100 according to an embodiment of the presentinvention. System 100 includes terminals 107 coupled to wireless gatewaydevice 106. In an embodiment of the present invention, gateway device106 and one or more terminals 107 communicate to form a personal areanetwork (“PAN”). In an embodiment of the present invention, terminals107 are coupled to gateway device 106 by short-range radio signals 110.In an embodiment of the present invention, terminals 107 are a desktopcomputer, a laptop computer, a personal digital assistant, a headset, apager, a printer, a watch, thin terminal, digital camera or anequivalent thereof. In an embodiment of the present invention, terminals107 include a Bluetooth™ 2.4 GHz transmitter/receiver. Likewise, gatewaydevice 106 includes a Bluetooth™ 2.4 GHZ transmitter/receiver. In analternate embodiment of the present invention, a Bluetooth™ 5.7 GHZtransmitter/receiver is used. Gateway device 106 and terminals 107hardware are illustrated in FIGS. 3 a-b.

In alternate embodiments of the present invention, other local wirelesstechnologies such as 802.11 or HomeRF signals are used to communicatebetween gateway device 106 and terminals 107.

In an embodiment of the present invention, gateway device 106 is coupledto cellular network 105 by cellular signals 111 using a protocol, suchas a Global and System for Mobile communications (“GSM ”) protocol. Inalternate embodiments, a Code Division Multiple Access (“CDMA”), CDMA2000 or Time Division Multiple Access (“TDMA”), or General Packet RadioService (“GPRS”) protocol is used.

In an alternate embodiment of the present invention, gateway device 106is coupled to a landline network by an Ethernet, Digital Subscriber Line(“DSL”), or cable modem connection, singly or in combination.

In an embodiment of the present invention, gateway device 106 is acellular telephone.

Cellular network 105 is coupled to a wireless carrier internal networkor carrier backbone 104. In an embodiment of the present invention,server 102 is coupled to carrier backbone 104. In an alternateembodiment of the present invention, carrier backbone 104 is coupled toInternet 103. Server 101 is coupled to Internet 103. In an embodiment ofthe present invention, servers 101 and 102 provide information, such asweb pages or application software components to terminals 107 by way ofgateway device 106. In an embodiment of the present invention, terminals107 share services and communicate by way of gateway device 106.

II. Gateway/Handheld Device Hardware

FIG. 2 illustrates terminals 107. In an embodiment of the presentinvention, there are two types of terminals: 1) Smart terminals and 2)Thin terminals. Smart terminals have a relatively powerful centralprocessor, operating system and applications. Their main needs from aPAN are access to a WAN through TCP/IP and other network services suchas storage and execution. For example, a computer notebook and PDA aresmart terminals. Thin terminals have a relatively low power centralprocessor and operating system. They are mainly used as peripherals toan Application server in a PAN and their main task is user interaction,rendering output for a user and providing an Application server with auser's input. For example, a watch or a messaging terminal are thinterminals.

FIG. 2 illustrates thin terminals. Voice terminal 204 includes a display204 b and a retractable keypad 204 a. Messaging Terminal 203 isillustrated in a closed position with a hinge 203 a used to open andclose terminal 203. Terminal 203 also includes a miniature QWERTYkeyboard and display when opened. Gateway device 201 includes clip 202for a belt.

In an embodiment, PMG device 201 is also illustrated in FIG. 2.

FIG. 3 a illustrates a hardware block diagram of gateway device 106 inan embodiment of the present invention. Gateway device 106 includes bothinternal and removable memory. In particular, gateway device 106includes internal FLASH (or Electrically Erasable Programmable Read-OnlyMemory (“EEPROM”) and static Random Access Memory (“SRAM”) memory 302and 303, respectively. Removable FLASH memory 304 is also used in anembodiment of the present invention. Memories 302, 303, and 304 arecoupled to bus 305. In an embodiment of the present invention, bus 305is an address and data bus. Application processor 301 is likewisecoupled to bus 305. In an embodiment of the present invention, processor301 is a 32 bit processor.

Bluetooth™ processor 307 is also coupled to bus 305. Bluetooth™ RFcircuit 309 is coupled to Bluetooth™ processor 307 and antenna 313.Processor 307, RF circuit 309 and antenna 313 transmit and receiveshort-range radio signals to and from terminals 107 illustrated in FIG.1, or device 350 illustrated in FIG. 3 b.

Cellular, such as GSM, signals are transmitted and received usingdigital circuit 306, analog circuit 308, transmitter 310, receiver 311and antenna 312. Digital circuit 306 is coupled to bus 305. In alternateembodiments, gateway device 106 includes a display, a speaker, amicrophone, a keypad and a touchscreen, singly or in combinationthereof.

FIG. 3 b illustrates device 350 that is a hand-held device in anembodiment of the present invention. Device 350, in an embodiment of thepresent invention, is one of the terminals 107 illustrated in FIG. 1.Similar to gateway device 106, device 350 includes SRAM and FLASH memory351 and 352, respectively. Memories 351 and 352 are coupled to bus 357.In an embodiment of the present invention, bus 357 is an address anddata bus. Keypad 353 is also coupled to bus 357. Short-range radiosignals are transmitted and received using Bluetooth™ processor 354 andBluetooth™ RF circuit 355. Antenna 356 is coupled to Bluetooth™ RFcircuit 355. In an embodiment of the present invention, antenna 356transmits and receives short-range radio signals from gateway device300. In alternate embodiments, device 350 includes a display, a speaker,a microphone, a keypad and a touchscreen, singly or in combinationthereof.

III. Gateway Software

FIG. 4 illustrates a software architecture 400 for gateway device 106illustrated in FIG. 3 a according to an embodiment of the presentinvention. Gateway software 400 is stored in FLASH 302. In an embodimentof the present invention, software components referenced in FIGS. 4-7represent a software program, a software object, a software function, asoftware subroutine, a software method, a software instance, a codefragment, singly or in combination. In an alternate embodiment,functions performed by software components illustrated in FIGS. 4-7 arecarried out completely or partially by hardware.

In an embodiment of the present invention, gateway software 400, orcomponents of gateway software 400, is stored in an article ofmanufacture, such as a computer readable medium. For example, gatewaysoftware 400 is stored in a magnetic hard disk, an optical disk, afloppy disk, CD-ROM (Compact Disk Read-Only Memory), RAM (Random AccessMemory), ROM (Read-Only Memory), or other readable or writeable datastorage technologies, singly or in combination. In yet anotherembodiment, gateway software 400, or components thereof, is downloadedfrom server 101 illustrated in FIG. 1.

Gateway software 400 includes telecommunication software or physicallayer protocol stacks, in particular cellular communications software401 and short-range radio communications software 402. In an embodiment,communication software 401 is a GPRS baseband software component usedwith processor 306 to transmit and receive cellular signals. In anembodiment, communication software 402 is a Bluetooth™ baseband softwarecomponent used with processor 307 to transmit and receive short-rangeradio signals.

In an embodiment of the present invention, operating system 403 is usedto communicate with telecommunications software 401 and 402. In anembodiment of the present invention, operating system 403 is a Linuxoperating system, EPOC operating system available from Symbian softwareof London, United Kingdom or a PocketPC or a Stinger operating systemavailable from Microsoft of Redmond, Wash. Operating system 403 manageshardware and enables execution space for gateway device softwarecomponents.

Network Management software 404 is used to provide a number of functionsaccording to embodiments of the present invention: 1) routing, 2) deviceplug and play, 3) PIN number management, 4) network device management,and 5) service repository. In an embodiment of the present invention,network management software 404 is programmed in C++ software language.

Smart phone application software 405 communicates with operating system403 and is used in a cellular telephone embodiment of the presentinvention.

1st and 2nd software application components 406 communicate withmanagement software 404 and provide additional services to a user. Forexample, application components 406 may include: 1) a stock quoteapplication for providing stock quotes, 2) a personal informationmanager application including calendars, to do lists, emails, orcontacts, 3) a synchronization software application for synchronizingdatabases, 4) a telephony application for providing telephone services,or 5) a location application for providing a current location of agateway device.

Furthermore, Graphics User Interface (“GUI”) 407 is provided to allow auser-friendly interface.

FIG. 5 a illustrates detailed gateway software architecture 500. In anembodiment of the present invention, network management software 404illustrated in FIG. 4 includes three software components as illustratedin FIG. 5 a:1) PAN router 404 c; 2) PAN server 404 b; and 3) Applicationserver 404 a. GPRS baseband 503 and Bluetooth™ baseband 502 are softwarecomponents used to generate communication signals to a cellular network105 and terminals 107 as illustrated in FIG. 1. In an alternateembodiment, other baseband software components 501 are used to generatecommunication signals. Media abstraction layer 504 allows operatingsystem 403 to communicate with basebands 503, 502 and 501, respectively.Media abstraction layer 504 and other abstraction layers, describedherein, translate a particular communication protocol, such as GPRS,into a standard command set used by a gateway device and/or terminal.The purpose of an abstraction layer is to isolate the physical stacksfrom the rest of the gateway device software components. This enablesfuture usage of different physical stacks without changing any of theupper layer software and allows the gateway device software to work withany communication protocol.

PAN router 404 c establishes a PAN network, implementing communicationprimitives, IP networking, IP services and similar tasks.

PAN server 404 b is responsible for implementing PAN oriented servicessuch as plug and play, terminal enumeration, application loading,storage space and other services. In an embodiment, PAN server 404 bcommunicates directly with applications 406 using application drivers.

PAN application server 404 a is responsible for implementing user andterminal oriented services and enables thin terminals. In an embodimentof the present invention, PAN application server 404 a implements suchapplications as a GUI 407, a remote terminal driver application, alocation application, a telephony application or an equivalent thereof.

FIG. 5 a, like FIG. 4, illustrates 1st and 2nd software componentapplications 406 and GUI 407.

A. PAN Router

PAN router 404 c enables a fully meshed IP based network. In anembodiment of the present invention, each terminal can leverage theexisting IP protocol, exchange data with other terminals and gain accessto a WAN through PAN router 404 c.

FIG. 5 b illustrates software components of PAN router 404 c. In anembodiment of the present invention, routing component 550, BluetoothLAN access Profile component 551, Dynamic Host ConfigurationProtocol/Point-to-Point Protocol (“DHCP/PPP”) component 552 and NetworkAddress Translator (“NAT”) component 553 are used in PAN router 404 c.In an alternate embodiment, Domain Naming Service (“DNS”) component 554,Tunneling and Optimization component 555 and Security component 556,singly or in combination are used in PAN router 404 c.

1. Routing Component

Routing component 550 is implemented in Router 404 c in order to realizea fully meshed IP network with access to a WAN. A routing component isresponsible for imitating a fully meshed network based on a Master/Slavenetwork.

Routing component 550 enables exchange of IP packets between twoterminals, broadcasting of IP packets between all terminals on a PAN androuting of IP packets to and from a WAN.

2. Bluetooth™ LAN Access Profile (“LAP”) Component

A Bluetooth™ LAN Access Profile (“LAP”) component 551 is used in orderto enable terminals to seamlessly use IP base networking. LAP component551 enables terminals to exchange IP packets between themselves and PANrouter 404 c. LAP component 551 is implemented over a PPP serialBluetooth™ connection. In an embodiment of the present invention,terminals, such as Smart terminals, include LAP chipsets.

3. DHCP/PPP Component

DHCP and PPP components 552 are used in order to enable an IP network.PPP realizes an IP network layered over LAP component 551.

DHCP component manages a PAN's IP address space and IP services,enabling terminals to get IP networking properties, such as an IPaddress for a terminal, an address of a DNS and an address of a defaultgateway device.

4. NAT Component

NAT component 553 translates a private IP address to and from a real IPaddress. Since mobile networks are typically capable of only providing asingle IP address, the terminals will have to use private IP addressessupplied by NAT component 553.

5. DNS Component

DNS component 554 translates services between human readable names andIP addresses. DNS component 554 enables a terminal to query anotherterminal's address based on the other terminal's name and to query forthe IP address of a named service on a WAN.

6. Tunneling and Optimization Component

Tunneling and Optimization component 555 allows terminals to usestandard protocols. For example, accessing a WAN through a cellularGPRS/CDMA network using TCP/IP yields poor results because TCP/IP doesnot behave well over a bandwidth limited, high latency and high packetloss network, such as GPRS/CDMA.

Tunneling and Optimization component 555 is used to enable practicalusage of IP in such networks. When using cellular, the tunnel will bebetween a mobile device having a PAN router and a landline operator'snetwork. The tunneling and optimization network translates IP packets tomore efficient transport methods for the specific access technology, andvice versa in a fully transparent fashion.

7. Security Component

Accessing a WAN can typically be done in two ways: unsecured whenaccessing a public network, such as the Internet, or secured whenaccessing a private network, such as an Enterprise network, file systemor Exchange server.

Security component 556 is a centralized managed way for controllingaccess to a secured private WAN. In order to avoid each one of theterminals from implementing its own security scheme and methods, acentralized security component 556 is used. In an embodiment of thepresent invention, security component 556 is a firewall 556 a, VPN 556 bor URL filter 556 c, singly or in combination.

8. Usage Scenario

In this scenario, a user is a traveling professional, who has a PDA andneeds to synchronize the PDA against a corporate Exchange server whileon the road. This synchronization needs to be done securely as the onlyway to enter the corporate network is via a certified and an informationtechnology (“IT”) manager approved VPN.

The user has a gateway device enabled handset with an embedded PANrouter 404 c and VPN client, which the IT manager installed.

As the user turns on the PDA, which is a Bluetooth™ equipped PDA with anLAP component 551, the PDA connects to a gateway device handset via theLAP. The PDA receives a local PAN IP address.

The user loads the PDA synchronization software, which is configured tosynchronize against the corporate Exchange server. When hitting the“Synchronize” button, the PDA opens a TCP connection to the IP addressof the corporate network.

The IP packets travel across the Bluetooth™ air interface to the handsetusing a PPP protocol. At the handset, the packets go through a NATcomponent and a local IP address is translated to a real Internet IPaddress. The real IP address goes to the VPN, which identifies thedestination as the corporate LAN. The VPN packages the packet over itsInternet tunnel, encrypts and signs it. The packet is then sent throughthe cellular air interface to the operator and the Internet, reachingthe corporate VPN and Exchange servers. The PDA is totally unaware ofthis process.

B. PAN Server

PAN server 404 b allows code to be downloaded to a PAN and executed in acentral way. Similarly, PAN server 404 b shares and stores data in acentralized manner.

1. PAN Server Interfaces

FIG. 6 illustrates software interfaces for PAN server 404 b shown inFIG. 5 a. PAN server 404 b provides application program interfaces(“API”) to applications 406. Applications 406 also queries PAN server404 b for specific services and/or terminal attributes in a PAN.Applications 406 provide at least three types of information to PANserver 404 b. Applications 406 provide a Personal Identification Number(“PIN”) number, network configuration information, service registrationand un-registration information. PAN server 404 a provides services anddevices enumeration information to applications 406. In an embodiment ofthe present invention, a PIN number is an authorization code to enable aterminal to connect to a PAN.

PAN server 404 b uses media abstraction layer 504 in order tocommunicate with terminals 107. PAN server 404 b transfers services anddevices enumerations to PAN router 404 c; while, a terminal ID number isprovided to PAN server 404 b from PAN router 404 c. A terminal ID is aunique code for identifying a particular terminal. Finally, a PIN numberis transferred from PAN server 404 b to PAN router 404 c.

In an embodiment of the present invention, PAN server 404 b loads anexecutable application software component to a selected terminal.Application server 404 a retrieves the application software componentlocally from gateway device 106 memory or from either server 102 or 103as illustrated in FIG. 1.

Backend middleware 485 provides a PIN number to router 404 c. In anembodiment of the present invention, backend middleware 485 is stored ona server coupled to cellular network 105 shown in FIG. 1. In anembodiment of the present invention, backend middleware 485 is asoftware component for supplying PIN numbers and accessing applicationcomponents for a particular terminal.

2. PAN Server Components

FIG. 7 illustrates software components of PAN server 404 a according toan embodiment of the present invention: 1) plug and play softwarecomponent 701, 2) PIN number management software component 702, 3)management software component 703, 4) service repository softwarecomponent 704, and 5) application loader 705. In alternate embodiments,more or less components are used.

a. Plug and Play Component

When a new terminal is introduced to a PAN, the software to support thisterminal needs to be located, downloaded and executed. The Plug and Playcomponent is responsible for identifying the introduction of the newterminal and deciding on the software needed to be downloaded.

An example of the Plug and Play usage is when a new thin terminal, likea messaging terminal, is introduced to a PAN. The terminal itself, beingthin, has no embedded application code or data. The appropriate softwarepackage (messaging software in this case) needs to be found, downloadedand executed. The Plug and Play component will identify the messagingterminal and resolve the needed software to support it.

FIG. 7 illustrates the operation of Plug & Play component 701. Inresponse to a terminal ID from PAN router 404 c, Plug and Play component701 will access the software package for a selected terminal frombackend middleware 485 or locally from gateway device 106 memory. If theselected package is not locally available in gateway device 106 memory,a URL is provided from backend middleware 485 for accessing the packageremotely. In an embodiment of the present invention, the selectedpackage will install and run on different modules (typically but notnecessarily a shell, service/terminal drivers and applications that canrun on the terminal).

b. Application Loader Component

Adding new capabilities to a PAN involves the loading of executable codeto a PAN execution environment. Application loading can be a result ofmany events: plug and play component 701 can generate an applicationloading for supporting a new terminal on a PAN, a user can decide toactively load an application to a PAN or an operator on a cellularnetwork can decide to load an application to a PAN. Application loader705 is responsible for application software code transfer and execution.

c. PIN Number Management Component

Whenever gateway device 106 and a terminal become aware of each other, apairing process takes place between them. For example, gateway device801 and terminal 802 are paired as illustrated in FIG. 8 a. When thispairing takes place for a first time (or when the link key that theywere sharing has been lost in one or both sides for any reason), aclaimant side (for example, gateway device 801) must know a PIN numberof terminal 802 in order to carry out a successful pairing. PAN server404 b will supply PIN number information to PAN router 404 c for thatpurpose. A PIN number is used to generate an initialization key that isused as an encryption key for the exchange of initial parameters betweena gateway device and terminals. In an embodiment of the presentinvention, PAN server 404 b must be able to supply PIN numberinformation according to different criteria. For example, PAN server 404b supplies PIN numbers for only those terminals that are associated witha certain terminal class or ID number.

PAN server 404 b will supply a PIN number upon an explicit request ofanother component, such as PAN router 404 c. In an alternate embodiment,Application server 404 b will supply PIN number information forterminals in order for them to establish a Bluetooth™ channel with otherterminals without a gateway device 107 as a mediator.

In an embodiment of the present invention, PIN numbers are availablefrom backend middleware 485. In alternate embodiments of the presentinvention, applications 406 provide a PIN number. For example, anapplication may allow a user to enter a PIN number or an application maycause backend middleware 485 to generate a PIN number. In an embodimentof the present invention, an application that supplies a PIN numberstates its origin.

There are two methods for obtaining PIN numbers. First, a push methodoccurs when the source of the PIN number transfers the PIN number whenit becomes available. Second, a query method occurs when router 404 cqueries the source of the PIN number for a PIN number according to acertain criteria. A push method is preferred because it enables animmediate response to a request for a PIN number. However, if the PINnumber is not available when a request arrives at the source of the PINnumber, PAN server 404 b attempts to obtain the PIN number using thequery method. When the push method is used, the stimulus comes from thePIN number information source.

PIN number management software component 702 maintains a local databaseof PIN numbers with some attributes. An attribute may include a terminalclass or terminal ID. PIN number management software component 702 adds,deletes and retrieves PIN numbers from the database. PIN number softwarecomponent 702 also may retrieve all PIN numbers associated with a screenterminal class. In an embodiment, PIN number management softwarecomponent 702 will have a persistent database. In an alternateembodiment, PIN number management software component 702 will not have apersistent database.

In alternate embodiments of the present invention, PIN number management702 is a central storage location for PAN databases and/or caching. Thestorage component supports implementation of a file system that can beaccessed by a terminal. Also, a storage component may have automaticbackup to a backend server or transparent storage.

d. Network Management Component

Management software component 703 provides functions to configure a PAN.

First, management software component 703 provides a disconnect servicefunction that forces specific applications to disconnect from a specificservice.

Second, management software component 703 provides a disconnect terminalfunction that forces specific applications to disconnect from allservices of a specific terminal.

Third, management software component 703 provides a disable servicefunction that halts any usage of a specific terminal's service.

Fourth, management software component 703 provides a disable terminalfunction that halts any usage of all services of a specific terminal.

The disconnecting functions described above allow a high priorityapplication to obtain a service from an application using the service.The disabling functions allow for high priority applications to createpersonal area network restrictions.

Service repository software component 704 is used to cease offeringservices. PIN Number management 702 is used to delete a PIN number andabstraction layer I/O is used to halt service's data traffic.

e. Enumeration or Service Repository Component

Service repository software component 704 allows applications 406, whichrun on a gateway device 106 or terminals 107, to discover what servicesare offered by a PAN, and to determine the characteristics of theavailable services. The service could be offered by remote terminal,such as an application in terminal 806 illustrated in FIG. 8 b. Forexample, terminal 806 could be a printer having a printing service.Also, the service could be offered by an application stored on gatewaydevice 106, such as the application in gateway device 801 illustrated inFIG. 8 a. For example, gateway device 801 is a cellular telephone havinga telephony service provided by a cellular telephone application. Remoteservices are offered with the assistance of service logical drivers(SLDs) that are stored on gateway device 106. Whenever an application isinterested in using a terminal service, the terminal interoperates withthe corresponding gateway device SLD. For example, an application onterminal 809, shown in FIG. 8 b, accesses a driver in gateway device 805for a service provided by an application on terminal 806. Therefore,from an application's point of view, the SLD of the remote service actsthe same way as a local application.

Service repository software component 704 offers a plurality offunctions.

First, service repository software component 704 provides serviceregistration of a service offered by application, or a hardwarecapability offered by terminal driver.

Second, service repository software component 704 provides serviceun-registration that cancels a registered service.

Third, service repository software component 704 provides registeredservices that suit a specific class.

Fourth, service repository software component 704 also providessearching of services. This function describes whether listed terminalssupport listed services. This function enables an application to quicklylocate a specific service. A search of a general class of service, suchas a search for a printer, may be performed. Likewise, a search forspecific attributes associated with that service, for example laser orcolor, is provided. Further, a search for specific instance of aservice, for example a HP LaserJet model GTI, is also provided.

Fifth, service repository software component 704 provides the capabilityof describing the participating terminals in a personal area network.The existence of these terminals is derived from a service registrationfunction.

Sixth, service repository software component 704 provides a disablingfunction that ceases offering an unfriendly service.

Seventh, service repository software component 704 also provides anenabling function that cancels service disabling.

Eighth, service repository software component 704 provides a terminaldisabling function that ceases offering all the services associated withan unfriendly terminal.

Ninth, service repository software component 704 provides a terminalenabling function that cancels terminal disabling.

In an embodiment, an application does not have to discover a service inorder to connect with a terminal. If an application has previousknowledge of a terminal's service, the application needs to only searchfor the specific terminal.

In an embodiment of the present invention, service repository component704 describes the terminals and the services that are available at aparticular time, but service repository software component 704 does notdescribe the current status of the services. A service might beavailable in a PAN but not necessarily accessible since anotherapplication is exclusively using the service.

Since service repository software component 704 operates with local andremote applications, a uniform interface is used. In an embodiment ofthe present invention, remote applications use a Bluetooth™ ServiceDiscovery Protocol (“SDP”) to discover what services gateway device 106offers. Similarly, local applications use SDP in an embodiment of thepresent invention.

C. Application Server

Application Server component 404 a illustrated in FIG. 5 a allows forremoving redundant capabilities from terminals and consolidating them ina centralized application server. This allows significant added value inminimizing the cost and complexity of the terminals in a PAN, as well asmaking their design intuitive and easy to use.

In an embodiment of the present invention, application server component404 a includes two components: 1) an execution environment and 2)services for being able to successfully execute software on amulti-terminal PAN, such as a file system.

Thin terminals, being optimized for low cost will not include an IPcapability in most cases. Instead, they will use the native protocolsoffered by the PAN's physical layer. This does not conflict with the PANrouter 404 c since thin terminals are an extended remote I/O forapplications running on a PAN application server 404 a. All the logic,protocols and standard compatibility is implemented in the applicationserver, in which standard protocols like IP are implemented and used.

1. Usage Scenario

In an embodiment of the present invention, a thin messaging terminalincludes a color Liquid Crystal Display (“LCD”), QWERTY keypad,Bluetooth™ chipset and a small software stack for displaying graphicalscreens received over the Bluetooth™ air interface and transmit keypadactions back over the Bluetooth™ air interface.

When a terminal is turned on for the first time, a Plug and Playcomponent 701 in the gateway device 106 identifies that this is a newterminal. Gateway device 106 communicates with Plug and Play component701 in order to retrieve the needed software package to be executed onan application server 404 a. In an embodiment of the present invention,a Plug and Play component 701 contains a URL for a chatting applicationpackage.

Application loader 705 gets the URL and loads the new package to PANapplication server 404 a in a gateway device 106 and executes thechatting software application. The chatting application softwareidentifies the messaging device by enumerating a PAN for terminals andcapabilities, and attaches itself to the right remote graphical driverand the remote keypad driver.

Now, all user interactions for the chatting application is displayed onthe messaging terminal, and the keypad entries on the terminal are sentto the chatting application.

In this embodiment of the present invention, the terminal is used onlyfor I/O and user interaction. The actual chatting logic is executed inapplication server 404 a, which is located in gateway device 106.

IV. Gateway Device/Terminal Operations

A. Terminal Joins Personal Area Network

First, PAN router 404 c requests a PIN number from PIN number managementcomponent 702. Second, if a PIN number is available, PIN numbermanagement 702 transfers the PIN number to PAN router 404 c. Otherwise,PIN number management 702 attempts to obtain the PIN number from othersources, such as applications 406 or backend middleware 485, andtransfers the PIN number to PAN router 404 c. Third, PAN router 404 cnotifies plug and play 701 that a pairing has ended and delivers aterminal ID to plug and play 701. Fourth, plug and play 701 resolves theterminal package URL with backend middleware 485 if a package is notlocally available; otherwise, the package is loaded and executed.Finally, if the package contains drivers, the driver's services areoffered to service repository 704.

B. Pin Number Received

Backend middleware 485 or an application acquires a PIN number. Second,the acquired PIN number is offered to PIN number management 702 byeither backend middleware 485 or applications 406. In an alternateembodiment of the present invention, a PIN number is offered withadditional characteristics of the associated terminal. PIN numberinformation is then accepted and stored with the attributes in adatabase of PIN number management 702.

C. Gateway Device Application Queries for a Specific Service

There are two methods for a gateway device 106 application to inquirefor a specific service. The first terminal method includes theapplication asking service repository 704 to describe the terminals inthe current personal area network and to describe whether any of theseterminals provide the requested service. In an embodiment of the presentinvention, an application sorts the available terminals in order ofpreference. The application then queries abstraction layer I/O whetherthe most preferred terminal's service is available.

The second service method includes an application querying servicerepository 704 to provide the registered services that suit a requestedservice class. The application then searches the registered services todetermine which capabilities are provided by the registered services. Inan embodiment of the present invention, an application sorts theavailable services in order of preference. The application then queriesabstract layer I/O whether the most preferred service is available.

D. Terminal Application Queries for a Gateway Device Service

Media abstraction layer 504 obtains an SDP of a remote terminalapplication. Media abstraction layer 504 passes the SDP call to servicerepository 704. Service repository 704 answers media abstraction layer504, using SDP, according to services that are registered. Theabstraction layer 504 then sends the answers to an application on remoteterminal.

In an alternate embodiment, service repository 704 pushes new servicesto a Bluetooth™ stack SDP database. The Bluetooth™ stack repliesautomatically and generates an SDP request.

E. High Priority Application Prevents Terminal Usage

In response to a network configuration signal from a high priorityapplication in applications 406, management component 703 generates adelete PIN number signal to PIN number management component 702 whichdeletes the PIN number associated with the selected terminal. Managementcomponent 703 generates a disable signal to service repository component704 to cease offering all the services associated with the selectedterminal. Management component 703 generates a disable service signal toabstraction layer I/O in order to halt all the transport to and from theselected terminal's services.

Abstraction layer I/O sends halt notifications to the applications thatare currently using the selected terminal's services. Abstraction layerI/O then stops any data transport to and from the selected terminal'sservices.

V. Conclusion

The foregoing description of the preferred embodiments of the presentinvention has been provided for the purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Obviously, many modificationsand variations will be apparent to practitioners skilled in the art. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, therebyenabling others skilled in the art to understand the invention forvarious embodiments and with the various modifications as are suited tothe particular use contemplated. It is intended that the scope of theinvention be defined by the following claims and their equivalents.

1. A wireless device comprising: a processor; a memory, coupled to theprocessor, to store instructions for generating a short-range radiosignal, processing user information, and providing a plurality ofservices; and an antenna, coupled to the processor, to generate theshort-range radio signal responsive to the instructions and theprocessor, wherein the wireless device is configured to communicate witha wireless gateway device over a short-range wireless network, andwherein the wireless gateway device is configured to: route informationreceived by the wireless gateway device over a wide area network to thewireless device over the short-range wireless network using a publicInternet Protocol (IP) address; route information received by thewireless gateway device over the short-range wireless network from thewireless device to one or more destinations over the wide area networkusing the public IP address; route information received by the wirelessgateway device over the short-range wireless network from the wirelessdevice to one or more destinations over the wide area network using thepublic IP address; route information received by the wireless gatewaydevice over the short-range wireless network from the wireless device toone or more other devices over the short-range wireless network usingthe private IP address; provide the wireless device with the ability toshare one or more services with the other devices; provide the wirelessdevice with the ability to add to, update, or otherwise manage theshared services; and provide the wireless device with a securitymanagement mechanism.
 2. The wireless device of claim 1, wherein thewireless device comprises a single processor.
 3. The wireless device ofclaim 1, wherein the wireless device is a messaging terminal.
 4. Thewireless device of claim 1, wherein the wireless device is selected froma group consisting of a desktop computer, a laptop computer, a personaldigital assistant, a headset, a pager, a printer, a watch, a digitalcamera and an equivalent thereof.
 5. The wireless device of claim 1,wherein the wireless device further comprises a 2.4 GHZ Bluetooth ™transceiver coupled to the processor and the antenna.
 6. The wirelessdevice of claim 1, wherein the wireless device further comprises a 5.7GHZ Bluetooth ™ transceiver coupled to the processor and the antenna. 7.The wireless device of claim 1, wherein the wireless device furthercomprises a keypad, coupled to the processor, for inputting information.8. The wireless device of claim 1, further comprising: a display,coupled to the processor, to present the user information responsive tothe instructions and the processor.
 9. The wireless device of claim 1,further comprising: a speaker, coupled to the processor, to present theuser information responsive to the instructions and the processor. 10.The wireless device of claim 1, further comprising: a microphone,coupled to the processor, for inputting information.
 11. The wirelessdevice of claim 1, further comprising: a touchscreen, coupled to theprocessor, for inputting information.
 12. The wireless device of claim1, wherein the short-range radio signal is a Bluetooth ™ signal.
 13. Thewireless device of claim 1, wherein the short-range radio signal is an802.11 signal.
 14. The wireless device of claim 1, wherein theshort-range radio signal is a HomeRF signal.
 15. A system comprising: awireless device configured to communicate with a wireless gateway deviceover a short-range wireless network, the wireless device comprising: aprocessor; a memory, coupled to the processor, to store instructions forgenerating a short-range radio signal, processing user information, andproviding a plurality of services; and an antenna, coupled to theprocessor, to generate the short-range radio signal responsive to theinstructions and the processor; and the wireless gateway deviceconfigured to: route information received by the wireless gateway deviceover the short- range wireless network from the wireless device to oneor more destinations over the wide area network using the public IPaddress; route information received by the wireless gateway device overthe short- range wireless network to the wireless device over theshort-range wireless network using a private IP address; routeinformation received by the wireless gateway device over the short-range wireless network from the wireless device to one or more otherdevices over the short-range wireless network using the private IPaddress; provide the wireless device with the ability to share one ormore services with the other devices; provide the wireless device withthe ability to add to, update, or otherwise manage the shared services;and provide the wireless device with a security management mechanism.16. The system of claim 15, wherein the wireless gateway devicecommunicates with the cellular network using a Global System for MobileCommunications (“GSM”) protocol.
 17. The system of claim 15, wherein thewireless gateway device communicates with the cellular network using aCode Division Multiple Access (“CDMA”) protocol.
 18. The system of claim15, wherein the wireless gateway device communicates with the cellularnetwork using a Code Division Multiple Access (“CDMA”) 2000 protocol.19. The system of claim 15, wherein the wireless gateway devicecommunicates with the cellular network using a Time Division MultipleAccess (“TDMA”) protocol.
 20. The system of claim 15, wherein theprocessor is the only processor in the second wireless device.
 21. Thesystem of claim 15, wherein the processor is a low power processor. 22.The system of claim 15, wherein the wireless device is a messagingterminal.
 23. The system of claim 15, wherein the wireless device isselected from a group consisting of a desktop computer, a laptopcomputer, a personal digital assistant, a headset, a pager, a printer, awatch, a digital camera and an equivalent thereof.
 24. The system ofclaim 15, wherein the wireless device further comprises a 2.4 GHZBluetooth ™ transceiver coupled to the processor and the antenna. 25.The system of claim 15, wherein the wireless device further comprises a5.7 GHZ Bluetooth ™ transceiver coupled to the processor and theantenna.
 26. The system of claim 15, wherein the wireless device furthercomprises a keypad, coupled to the processor, for inputting information.27. The system of claim 15, further comprising: a display, coupled tothe processor, to present the user information responsive to theinstructions and the processor, wherein the processor in a Bluetooth ™processor.
 28. The system of claim 15, further comprising: a speaker,coupled to the processor, to present the user information responsive tothe instructions and the processor.
 29. The system of claim 15, furthercomprising: a microphone, coupled to the processor, for inputtinginformation.
 30. The system of claim 15, further comprising: atransceiver, coupled to the processor, to present the user withinformation responsive to the instructions and the processor.
 31. Thesystem of claim 15, wherein the short-range radio signal is a Bluctooth™ signal.
 32. The system of claim 15, wherein the short-range radiosignal is an 802.11 signal.
 33. The system of claim 15, wherein theshort-range radio signal is a HomeRF signal.